{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "3ba3e3e7-2a00-467a-8fae-16f7e19b7e8d",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from scipy.special import comb\n",
    "from scipy.special import legendre\n",
    "from scipy.integrate import quad\n",
    "from scipy.optimize import curve_fit\n",
    "plt.rcParams['axes.unicode_minus']=False#用来正常显示负号\n",
    "plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "2393722b-ec96-4900-9f1d-f67bc83b9a9e",
   "metadata": {},
   "outputs": [],
   "source": [
    "def compute_legendre_coefficients(f, N):\n",
    "    coefficients = []\n",
    "    for n in range(N + 1):\n",
    "        Pn = legendre(n)\n",
    "        # 使用正交性计算积分\n",
    "        integrand = lambda x: f(x) * Pn(x)\n",
    "        cn = (2 * n + 1) / 2 * quad(integrand, -1, 1)[0]\n",
    "        coefficients.append(cn)\n",
    "    return coefficients\n",
    "\n",
    "def legendre_approximation(x, coefficients):\n",
    "    approx = sum(cn * legendre(n)(x) for n, cn in enumerate(coefficients))\n",
    "    return approx\n",
    "    \n",
    "def bernstein_polynomial(n, k, x):\n",
    "    # Calculate the binomial coefficient\n",
    "    binom_coeff = comb(n, k)\n",
    "    # Compute Bernstein polynomial using numpy arrays\n",
    "    return binom_coeff * (x ** k) * ((1 - x) ** (n - k))\n",
    "\n",
    "def bernstein_approximation(f,n,x):\n",
    "    approximation = np.zeros_like(x, dtype=float)\n",
    "    for k in range(n + 1):\n",
    "        approximation += f(k / n) * bernstein_polynomial(n, k, x)\n",
    "    return approximation\n",
    "\n",
    "def multi_gaussian(x, *params):\n",
    "    y = np.zeros_like(x)\n",
    "    num_gaussians = len(params) // 3\n",
    "    for i in range(num_gaussians):\n",
    "        amplitude = params[3 * i]\n",
    "        mean = params[3 * i + 1]\n",
    "        std_dev = params[3 * i + 2]\n",
    "        y += amplitude * np.exp(-((x - mean) ** 2) / (2 * std_dev ** 2))\n",
    "    return y\n",
    "\n",
    "def guass(x):\n",
    "    p = 1.0/(2*np.pi)**0.5\n",
    "    return p*np.exp(-x**2/2)\n",
    "    \n",
    "f = lambda x:x**2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "dcb574be-0b51-44e1-a8ba-2fead554450a",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/tmp/ipykernel_3319/1275496928.py:16: OptimizeWarning: Covariance of the parameters could not be estimated\n",
      "  popt, _ = curve_fit(multi_gaussian, x, np.sin(x), p0=initial_guess)\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "initial_guess = [\n",
    "    1, np.pi / 2, 0.5,  # 第一个高斯函数的 (amplitude, mean, std_dev)\n",
    "    1, np.pi, 0.5,      # 第二个高斯函数的 (amplitude, mean, std_dev)\n",
    "    1, 3 * np.pi / 2, 0.5 # 第三个高斯函数的 (amplitude, mean, std_dev)\n",
    "]\n",
    "\n",
    "x = np.linspace(-1,1, 100)\n",
    "\n",
    "# f = lambda x: np.sin(x * np.pi) \n",
    "\n",
    "n = 10\n",
    "coefficients = compute_legendre_coefficients(f, n)\n",
    "\n",
    "approximation = bernstein_approximation(f, n, x)\n",
    "approx_values = [legendre_approximation(x1, coefficients) for x1 in x]\n",
    "popt, _ = curve_fit(multi_gaussian, x, np.sin(x), p0=initial_guess)\n",
    "# 绘制结果\n",
    "plt.plot(x, f(x), label=\"sin(πx)\", color=\"blue\")\n",
    "plt.plot(x, approx_values, label=f'Legendre Approximation (N={n})', color=\"red\",  linestyle=\"--\")\n",
    "plt.plot(x, approximation, label=f\"Bernstein Approximation (n={n})\", color=\"green\", linestyle=\"--\")\n",
    "# plt.plot(x, popt, label=f\"Bernstein Approximation (n={n})\", color=\"yellow\", linestyle=\"--\")\n",
    "# plt.plot(x, multi_gaussian(x, *popt), label=f\"guass Approximation (n={n})\", color=\"yellow\", linestyle=\"--\")\n",
    "plt.xlabel(\"x\")\n",
    "plt.ylabel(\"y\")\n",
    "plt.legend()\n",
    "plt.title(\"Bernstein Polynomial Approximation of sin(πx)\")\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "212071f0-cc27-4cbc-8e58-c8337a6405ac",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bf5af264-c737-44b8-9056-088db358a8ac",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "1e86f2a3-c4dd-4c37-9b3b-e62edd4f9867",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "74572748-a9b5-43e9-9626-81069e54df53",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
